package com.gongzhiyun.springboot3test.service;

import com.gongzhiyun.springboot3test.base.PageBean;
import com.gongzhiyun.springboot3test.base.R;
import com.gongzhiyun.springboot3test.entity.novel.*;
import com.gongzhiyun.springboot3test.vo.NovelCommentData;
import com.gongzhiyun.springboot3test.vo.NovelCommentReplyData;
import com.gongzhiyun.springboot3test.vo.NovelShelfData;

import java.util.List;

public interface NovelService {

    Integer getLastId();

    R<NovelList> queryNovelById(Integer novelId);

    R<NovelReading> getReading(Integer novelId);

    R<List<NovelShelfData>> getHistoryReading();

    R<String> saveReading(NovelReading novelReading);

    R<List<NovelChapter>> queryChapter(Integer novelId);

    R<NovelChapter> getChapter(Integer id,Integer novelId);

    R<List<NovelList>> queryNovel(NovelList novelList, PageBean pageBean);

    R<String> joinNovel(NovelList novelList);

    R<String> joinChapter(NovelChapter novelChapter);

    R<List<NovelShelfData>> queryShelf();

    R<String> joinShelf(Integer novelId);

    R<List<NovelTypes>> queryTypesF();

    R<List<NovelTypes>> queryTypesM();

    R<String> userRatings(NovelUserRatings userRatings);

    R<String> praiseComment(Integer commentId);

    R<String> praiseCommentReply(Integer replyId);

    R<List<NovelCommentData>> queryComment(NovelComment novelComment, PageBean pageBean);

    R<List<NovelCommentReplyData>> queryReply(NovelCommentReply novelCommentReply, PageBean pageBean);

    R<String> comment(NovelComment novelComment);

    R<String> commentReply(NovelCommentReply novelCommentReply);
}
